package xzs.wx.wxappFace.vo;

import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import com.tencentcloudapi.common.AbstractModel;

import java.util.HashMap;

public class GetBizTokenRequest extends AbstractModel {
    /**
     * 用于细分客户使用场景，申请开通服务后，可以在腾讯云慧眼人脸核身控制台（https://console.cloud.tencent.com/faceid） 自助接入里面创建，审核通过后即可调用。如有疑问，请加慧眼小助手微信（faceid001）进行咨询。
     */
    @SerializedName("CompareWith")
    @Expose
    private Integer CompareWith;


    /**
     * 身份标识（未使用OCR服务时，必须传入）。
     规则：a-zA-Z0-9组合。最长长度32位。
     */
    @SerializedName("IdCard")
    @Expose
    private String IdCard;

    /**
     * 姓名。（未使用OCR服务时，必须传入）最长长度32位。中文请使用UTF-8编码。
     */
    @SerializedName("Name")
    @Expose
    private String Name;

    /**
     * 透传字段，在获取验证结果时返回。
     */
    @SerializedName("Extra")
    @Expose
    private String Extra;

    /**
     * 用于人脸比对的照片，图片的BASE64值；
     BASE64编码后的图片数据大小不超过3M，仅支持jpg、png格式。
     */
    @SerializedName("ImageBase64")
    @Expose
    private String ImageBase64;

    public Integer getCompareWith() {
        return CompareWith;
    }

    public void setCompareWith(Integer compareWith) {
        CompareWith = compareWith;
    }

    /**
     * Get 身份标识（未使用OCR服务时，必须传入）。
     规则：a-zA-Z0-9组合。最长长度32位。
     * @return IdCard 身份标识（未使用OCR服务时，必须传入）。
    规则：a-zA-Z0-9组合。最长长度32位。
     */
    public String getIdCard() {
        return this.IdCard;
    }

    /**
     * Set 身份标识（未使用OCR服务时，必须传入）。
     规则：a-zA-Z0-9组合。最长长度32位。
     * @param IdCard 身份标识（未使用OCR服务时，必须传入）。
    规则：a-zA-Z0-9组合。最长长度32位。
     */
    public void setIdCard(String IdCard) {
        this.IdCard = IdCard;
    }

    /**
     * Get 姓名。（未使用OCR服务时，必须传入）最长长度32位。中文请使用UTF-8编码。
     * @return Name 姓名。（未使用OCR服务时，必须传入）最长长度32位。中文请使用UTF-8编码。
     */
    public String getName() {
        return this.Name;
    }

    /**
     * Set 姓名。（未使用OCR服务时，必须传入）最长长度32位。中文请使用UTF-8编码。
     * @param Name 姓名。（未使用OCR服务时，必须传入）最长长度32位。中文请使用UTF-8编码。
     */
    public void setName(String Name) {
        this.Name = Name;
    }


    /**
     * Get 透传字段，在获取验证结果时返回。
     * @return Extra 透传字段，在获取验证结果时返回。
     */
    public String getExtra() {
        return this.Extra;
    }

    /**
     * Set 透传字段，在获取验证结果时返回。
     * @param Extra 透传字段，在获取验证结果时返回。
     */
    public void setExtra(String Extra) {
        this.Extra = Extra;
    }

    /**
     * Get 用于人脸比对的照片，图片的BASE64值；
     BASE64编码后的图片数据大小不超过3M，仅支持jpg、png格式。
     * @return ImageBase64 用于人脸比对的照片，图片的BASE64值；
    BASE64编码后的图片数据大小不超过3M，仅支持jpg、png格式。
     */
    public String getImageBase64() {
        return this.ImageBase64;
    }

    /**
     * Set 用于人脸比对的照片，图片的BASE64值；
     BASE64编码后的图片数据大小不超过3M，仅支持jpg、png格式。
     * @param ImageBase64 用于人脸比对的照片，图片的BASE64值；
    BASE64编码后的图片数据大小不超过3M，仅支持jpg、png格式。
     */
    public void setImageBase64(String ImageBase64) {
        this.ImageBase64 = ImageBase64;
    }

    /**
     * Internal implementation, normal users should not use it.
     */
    public void toMap(HashMap<String, String> map, String prefix) {
        this.setParamSimple(map, prefix + "CompareWith", this.CompareWith);
        this.setParamSimple(map, prefix + "IdCard", this.IdCard);
        this.setParamSimple(map, prefix + "Name", this.Name);
        this.setParamSimple(map, prefix + "Extra", this.Extra);
        this.setParamSimple(map, prefix + "ImageBase64", this.ImageBase64);

    }

}
